package net.valerijtimakov.homefinances.dao.storages.user;

import java.util.Map;
import net.valerijtimakov.homefinances.domain.user.UserItem;
import net.valerijtimakov.homefinances.exceptions.AppExceptionWrongState;
import net.valerijtimakov.homefinances.exceptions.AppPersProviderException;
import net.valerijtimakov.homefinances.exceptions.AppPersistentException;
import net.valerijtimakov.homefinances.exceptions.wrongarg.AppExceptionNullArgument;

public interface IUserStorage {
	public Map<Long, UserItem> getUsers(long... id) throws AppPersProviderException, AppExceptionWrongState ;
	public void addUser(UserItem user) throws AppPersistentException, AppExceptionNullArgument, AppExceptionWrongState ;
	public void removeUser(long id) throws AppPersProviderException, AppExceptionWrongState;
	public void updateUser(UserItem user) throws AppPersProviderException, AppExceptionWrongState;
}
